Electronic apparatus, method for electronic apparatus and information processing system

ABSTRACT

An electronic apparatus, a method for an electronic apparatus and an information processing system are provided. The electronic apparatus includes a processing circuit configured to: generate a request to be confirmed which is to be sent to other nodes in a network, the request to be confirmed including an electronic signature of the present node; acquire responses to the request to be confirmed which are from the other nodes, the response including an electronic signature of a corresponding node; and generate, based on the request to be confirmed, the acquired responses and an existing block chain, a new block.

FIELD OF THE INVENTION

Embodiments of the present disclosure generally relate to the field ofinformation processing, in particular to information securitytechnologies, and more particular to an electronic apparatus, a methodfor an electronic apparatus and an information processing system.

BACKGROUND OF THE INVENTION

In the computer science, a hash function is also referred to as ahashing function, which is used to convert different information withany length, such as numbers, texts or other information, into binarysequences with the same length but different content. Taking the SHA 256algorithm as an example, input information with any length can beconverted into a group of binary sequences with a length of 256 by thefunction, so as to be stored and identified uniformly. In addition, aprobability that the same digital output is generated by the SHA256 fromany two pieces of different input information is very little, since tinychange on the input information will result in great change on theoutput numbers. This ensures that there is a one-to-one-correspondencebetween the input information and the output numbers. In addition, it isquite difficult to deduce the input information from the output numbers.Therefore, if a particular output number is to be generated, onlyforward calculation one by one using a method of trying randomly can beadopted, and the input information can not be deduced from the outputresult reversely.

Peer to Peer (P2P) calculation may be simply defined as sharing computerresources and services by direct exchanging, and a network formed by anapplication layer of a P2P calculation model is generally referred as aP2P network. In a P2P network environment, thousands of computersconnected to each other are peers, and generally the whole network doesnot need a dedicated centralized server.

In addition, during a process of information transferring, a public keyinfrastructure (referred to as PKI for short) may be used to ensureinformation security. Specifically, a sender encrypts information usinga key; after receiving the information, a receiver decrypts theinformation using another paired key, thereby ensuring privacy andsecurity during the information transferring process. The key may be agroup of numbers or characters. The original information is convertedinto another format by performing a specific operation on the originalinformation and the group of numbers or characters, thereby achievingencryption. The decryption process is just opposite. In most of cases, agroup of keys are consisted of a public key and a private key. Theprivate key is maintained personally, and the pubic key needs to bepublic to others. During the process of information transferring, thepublic key and the private key cooperate with each other, such that anidentity of a sender holding the private key can be verified, and thesender can not deny the information sent by itself. Further, theintegrity of transceiving information can be ensured, and theinformation is prevented from being intercepted and tampered duringtransmission. If the public key is lost, the public key can be recoveredby the private key. However, it is impossible to deduce the private keyfrom the public key theoretically, thereby ensuring privacy of theprivate key.

A concept of block chain is initially applied by Satoshi Nakamoto to thebitcoin technology which he proposed. The bitcoin is a digital currencyin a form of P2P. P2P transmission means a decentralized payment system.In the bitcoin economy, all transaction behaviors are confirmed andrecorded using a distributed database composed of many nodes in thewhole P2P network, and a design of cryptology (such the hash functionand the public key infrastructure described above) is used to ensuresecurity during respective segments of currency circulation. Thecharacteristic of decentralization of P2P and the algorithm itself canensure that currency values can not be manipulated manually bymanufacturing a great number of bitcoins. The design based on cryptologycan ensure that the bitcoins can be transferred or paid only by the realholders. This also ensures anonymity of currency ownership andcirculation transaction. The block chain is composed of a series of datablocks generated by a cryptology method, each block contains a hashvalue of a last block, and a current block is linked from an initialblock, so as to form the block chain. It is ensured that each block isgenerated after the last block in a time order; otherwise the hash valueof the last block is unknown. The block chain is extended continuously,and a new block would not be removed once added to the block chain. Theblock chain is actually a distributed database maintained by the wholeP2P network platform, i.e., all participating client nodes, whichrecords the whole transaction history of bitcoins.

Since each participating node in the network stores a copy of the blockchain, it is essentially impossible to lose or tamper the block chaincompletely.

SUMMARY OF THE INVENTION

In the following, an overview of the present invention is given simplyto provide basic understanding to some aspects of the present invention.It should be understood that this overview is not an exhaustive overviewof the present invention. It is not intended to determine a criticalpart or an important part of the present invention, nor to limit thescope of the present invention. An object of the overview is only togive some concepts in a simplified manner, which serves as a preface ofa more detailed description described later.

According to an aspect of the present disclosure, an electronicapparatus is provided, which includes a processing circuit configuredto: generate a request to be confirmed which is to be sent to othernodes in a network, the request to be confirmed including an electronicsignature of the present node; acquire responses to the request to beconfirmed which are from the other nodes, the response including anelectronic signature of a corresponding node; and generate, based on therequest to be confirmed, the acquired responses and an existing blockchain, a new block.

According to another aspect of the present disclosure, an electronicapparatus is provided, which includes a processing circuit configuredto: generate a response to a request to be confirmed from another nodein a network, for use by the other node to generate a new block, therequest to be confirmed including an electronic signature of the othernode and the response including an electronic signature of the presentnode.

According to another aspect of the present disclosure, a method for anelectronic apparatus is provided, which includes: generating a requestto be confirmed which is to be sent to other nodes in a network, therequest to be confirmed including an electronic signature of the presentnode; acquiring responses to the request to be confirmed which are fromthe other nodes, the response including an electronic signature of acorresponding node; and generating, based on the request to beconformed, the acquired responses and an existing block chain, a newblock.

According to another aspect of the present disclosure, a method for anelectronic apparatus is provided, which includes: generating a responseto a request to be confirmed from another node in a network, for use bythe other node to generate a new block, the request to be confirmedincluding an electronic signature of the other node and the responseincluding an electronic signature of the present node.

According to another aspect of the present disclosure, an informationprocessing system is provided, which includes multiple nodescommunicating with each other via a P2P network, where each of themultiple nodes is configured to: generate a request to be confirmedwhich is to be sent to other nodes in a network, the request to beconformed including an electronic signature of the present node; acquireresponses to the request to be confirmed which are from the other nodes,the response including an electronic signature of a corresponding node;and generate, based on the request to be conformed, the acquiredresponses and an existing block chain, a new block; and/or each of themultiple nodes is configured to: generate a response to a request to beconfirmed from another node in the network, for use by the other node togenerate a new block.

According to other aspects of the present disclosure, there are alsoprovided computer program codes and computer program products forimplementing the above mentioned method for an electronic apparatus aswell as a computer readable storage medium in which computer programcodes for implementing the above mentioned method for an electronicapparatus are recorded.

According to the embodiment of the present disclosure, a new blockincluding credible and useful information is generated based on therequest and the response, and trust is transferred among different nodesusing a block chain, thereby achieving sharing of credible information.

These and other advantages of the present disclosure will be moreapparent by illustrating in detail a preferred embodiment of the presentinvention in conjunction with accompanying drawings below.

BRIEF DESCRIPTION OF THE DRAWINGS

To further set forth the above and other advantages and features of thepresent invention, detailed description will be made in the followingtaken in conjunction with accompanying drawings in which identical orlike reference signs designate identical or like components. Theaccompanying drawings, together with the detailed description below, areincorporated into and form a part of the specification. It should benoted that the accompanying drawings only illustrate, by way of example,typical embodiments of the present invention and should not be construedas a limitation to the scope of the invention. In the accompanyingdrawings:

FIG. 1 shows a block diagram of functional modules of an electronicapparatus according to an embodiment of the present disclosure;

FIG. 2 shows a schematic diagram of a structure of a block according toan embodiment of the present disclosure;

FIG. 3 shows a schematic diagram of a structure of a block according toan embodiment of the present disclosure;

FIG. 4 shows a schematic diagram of a structure of a block according toan embodiment of the present disclosure;

FIG. 5 shows a schematic diagram of a structure of a block according toan embodiment of the present disclosure;

FIG. 6 shows a block diagram of functional modules of an electronicapparatus according to an embodiment of the present disclosure;

FIG. 7 shows a schematic diagram of an example of a time window;

FIG. 8 shows a block diagram of functional modules of an electronicapparatus according to an embodiment of the present disclosure;

FIG. 9 shows a flowchart of a method for an electronic apparatusaccording to an embodiment of the present disclosure;

FIG. 10 shows a flowchart of a method for an electronic apparatusaccording to an embodiment of the present disclosure; and

FIG. 11 is an exemplary block diagram illustrating the structure of ageneral purpose personal computer capable of realizing the method and/ordevice and/or system according to the embodiments of the presentinvention.

DETAILED DESCRIPTION OF THE EMBODIMENTS

An exemplary embodiment of the present invention will be describedhereinafter in conjunction with the accompanying drawings. For thepurpose of conciseness and clarity, not all features of an embodimentare described in this specification. However, it should be understoodthat multiple decisions specific to the embodiment have to be made in aprocess of developing any such embodiment to realize a particular objectof a developer, for example, conforming to those constraints related toa system and a business, and these constraints may change as theembodiments differs. Furthermore, it should also be understood thatalthough the development work may be very complicated andtime-consuming, for those skilled in the art benefiting from the presentdisclosure, such development work is only a routine task.

Here, it should also be noted that in order to avoid obscuring thepresent invention due to unnecessary details, only a device structureand/or processing steps closely related to the solution according to thepresent invention are illustrated in the accompanying drawing, and otherdetails having little relationship to the present invention are omitted.

First Embodiment

As described above, the block chain technology has a characteristic ofcreating and transferring trust. Therefore, the block chain technologymay adapt to any application in which respective strange nodes without atrust relationship cooperate with each other, although the presentapplication is generally limited to the field of finance.

In a bitcoin system, a new block is generated by a mining operation of aminer. The mining is a process in which a work load is proved using astochastic number. The process solves a trust problem in the internet,and is a credit proof in an unreliable network environment. The miningrefers to a process of generating a new block and calculating astochastic number. Specifically, for a certain node on the network forexample a computer, the mining includes the following steps: calculatinga hash value by the computer by taking content of a last block of itsstored block chain as the input; after receiving the broadcastedtransactions and checking accuracy of the transactions one by one,combining the transactions which are not listed in the existing blocksand incorporating into a new block by the computer, guessing astochastic number by the computer randomly; inputting the data generatedin the previous three steps into an SHA256 hash function by thecomputer, so as to calculate a binary number with a length of 256;checking whether the previous n bits of the binary number meet arequirement (i.e., a difficulty target) by the computer andbroadcasting, by the computer, the new block to other nodes on thenetwork together with the lucky stochastic number, if the binary numbermeets the requirement. After receiving the new block, the other nodesperform check in a similar way. If the result is comet, the wholenetwork accepts the new block, and stores the new block together withthe previous block chain. On the other hand, if the generated stochasticnumber does not meet the requirement, steps after the second step arerepeated, until the computer itself generates a new block successfullyor receives a new block transmitted by other nodes.

It may be seen that, in the block chain system of bitcoins, calculationpower is wasted severely. Therefore, it is not suitable for anapplication scenario with a poor calculation capability or a highreal-time requirement. In addition, content included in the block istransaction information between different owners, and therefore a wholeblock itself can not be transferred or transacted as an independentproperty, or the block itself does not have an independent meaning.

In the embodiment, a technology for generating a block based on arequest and a response is provided. FIG. 1 shows a block diagram offunctional modules of an electronic apparatus 100 according to anembodiment of the present disclosure. The electronic apparatus 100includes: a request generating unit 101, configured to generate arequest to be confirmed which is to be sent to other nodes in a network,the request to be confirmed including an electronic signature of thepresent node; a response acquiring unit 102, configured to acquireresponses to the request to be confirmed which are from other nodes, theresponse including an electronic signature of a corresponding node; anda block generating unit 103, configured to generate, based on therequest to be confirmed, the acquired responses and an existing blockchain, a new block.

A node where the electronic apparatus 100 is located is referred as thepresent node. The node described in the present disclosure may be anynetwork device in a communication network, which includes but notlimited to a computer terminal, a server, a router and so on.Information is transferred between respective nodes over a P2P network.The P2P network may be a fixed network, or a dynamic self-organizednetwork such as Ad Hoc or the like.

Each node may be freely accessed to a block chain platform to generate anew block, for example, freely downloading an application (a client) ofa corresponding block chain and running the application. Practically, acertain threshold may be set to limit accessing of nodes. The thresholdmay be an extra condition such as obtaining certain permission, thecomputation capability or the like.

With the above electronic apparatus 100, the present node functions asan initiating node. The request generating unit 101 generates a requestto be conformed by other nodes in response to an operation of a user andso on for example, where the request to be confirmed includes anelectronic signature of the present node.

The electronic signature is used, such that other nodes can confirm anidentity of the initiating node and that the initiating node admits thecontent of the request to be confirmed. The electronic signature may beimplemented by any authentication technology. As an example, the requestgenerating unit 101 may encrypt the request to be confirmed using a keyallocated to the present node in a public key system, so as to obtain anelectronic signature. The key may be preset or may be generated whenaccessing to the block chain platform.

After receiving the request to be confirmed, each of the other nodesmakes response to the request to be confirmed, for example according topriori knowledge of the corresponding node or real-time context data,and attaches an electronic signature of the corresponding node in theresponse. How to make a response depends on specific applications.Similarly, the electronic signature enables the initiating node toconfirm, after receiving the response, an identity of the node makingthe response and that the node admits the content of the response.

The response acquiring unit 102 acquires responses from other nodes, andthe block generating unit 103 generates a new block using the request tobe conformed and the acquired responses, on the basis of the existingblock chain. In an example, the block generating unit 103 generates thenow block only when the acquired responses satisfy a predeterminedcondition. When the predetermined condition is not satisfied or othernodes do not make a response or respond by rejecting, the blockgenerating unit 103 performs no operation. For example, the blockgenerating unit 103 generates the new block only when the number of theacquired responses is large enough, for example, when above ⅔ of thenodes make responses. Alternatively, the block generating unit 103generates the new block only when the number of nodes making positiveresponses exceeds a predetermined number. The predetermined conditionmay be set depending on an actual application scenario and/or an objectto be realized.

The block generating unit 103 may generate the following new block. Thenew block includes a block header and a data body, and the block headerincludes a timestamp, a hash value of a last block in the existing blockchain, a hash value of the new block and a hash value of the data body.Each node would store a copy of the block chain. The block generatingunit 103 may acquire the last block in the existing block chain byreading the copy. The new block is linked to the existing block chain bythe hash value of the last block in the existing block chain included inthe new block.

In an example, the data body includes the request to be confirmed andthe responses. As described above, the request to be confirmed and theresponses each include an electronic signature of a respective node.FIG. 2 shows a schematic diagram of an example of a block according tothe embodiment.

Schematically, in order to facilitate storing, information of the databody may be stored in a tree hash structure such as a Merkle tree. FIG.3 shows a schematic diagram of an example of a block using the Merkletree. It may be seen that, in the example, the request to be confirmedand respective responses each are a leaf node of the tree hashstructure. A root hash value of the Merkle tree is stored in the blockheader as the hash value of the data body. Practically, the content ofthe data body may be stored using a list, and in this case the hashvalue of the data body is directly obtained from the content of thelisted data body. It should be understood that, the above description isonly exemplary, and the storage manners of the block are not limitedthereto.

In addition, in order to facilitate an operation of an applicationlayer, the request to be confirmed may also be included in the blockheader. In this way, the application layer may acquire the contentrelated to the block by directly reading the block header. In this case,the data body only includes the response. FIG. 4 shows a schematicdiagram of a block in the example. Information of the data body maystill be stored in the tree hash structure, such as the Merkle tree.FIG. 5 shows a schematic diagram of an example of a block using theMerkle tree.

It should be noted that, the generation of the new block described aboveis just an example. The block generating unit 103 may generate a newblock using other ways to share the information. For example, in thecase of using a block chain platform with a token, the block generatingunit 103 may further bind the request to be confirmed and the responseson a virtual currency to share using the technology similar to a coloredcoin.

After generating the new block, the node broadcasts the new block in anetwork, such that other nodes can verify the new block and thus updatethe block chain. Therefore, in the embodiment, the electronic apparatus100 generates a new block by transmitting the request to be confirmedand receiving the responses. Since the request to be confirmed and theresponses each include the electronic signature of the respective node,unnecessary calculation power consumption is reduced while ensuring thatthe new block is based on trust. The generated new block includes therequest to be confirmed and the responses thereof; and the block itselfcan be exchanged and transferred as a property, thereby sharing theinformation.

In addition, any participating nodes may obtain reward, therebyreflecting fairness. For example, in order to drive all nodes toparticipate in maintenance of the block chain, some reward measures maybe provided. For example, a request to be confirmed transmitted by anode with high points may be processed by other nodes first; each nodegenerating a new block would obtain bonus points; every time verifyingthe request to be confirmed, a node in charge of the verification wouldalso obtain bonus points, and signature information of the nodeperforming the verification also appears in the new block; and so on.

Respective units in the electronic apparatus 100 may be implemented byone or more processing circuits for example, and the one or moreprocessing circuits may be implemented as a chip for example.

Second Embodiment

FIG. 6 shows a block diagram of functional modules of an electronicapparatus 200 according to another embodiment of the present disclosure.Besides the respective units described by referring to FIG. 1, theelectronic apparatus 200 further includes: a transceiving unit 201,configured to broadcast the generated new block to each of the othernodes in the network so as to update the block chain.

In addition, the transceiving unit 201 is further configured to transmitthe request to be confirmed to other nodes in the network and receiveresponses from the other nodes.

According to the block chain technology, the block chain in stored onthe network in a distributed manner. Therefore, after a new block isgenerated, the new block needs to be recognized by the other nodes, suchthat the new block is attached to the end of a copy of the stored blockchain.

After receiving the new block, each of the other nodes on the networkverify the new block, for example verifying at least one of thefollowing items: the hash value of the block, the hash value of aprevious block included in the block, the hash value of a data body, andlegitimacy of respective electronic signatures in the data body and soon. When the verification passes, the new block is attached to the endof the copy of the block chain stored by the node. On the other hand,there is a possibility that the new block is rejected by other nodes dueto a conflict, verification failure or the like.

In an example, the block generating unit 103 is further configured toregenerate, based on the request to be confirmed, the received responsesand the updated block chain, a new block, when the generated new blockis rejected by other nodes. For example, when the new block is rejectedby nodes on the network since the new block conflicts with a new blockgenerated by another node substantially at the same time, the blockchain is updated since other nodes on the network accept the new blockgenerated by the other node, that is, the new block generated by theother node is attached to the end of the copy of the block chain storedby each node. In this case, the present node may regenerate a new blockusing the existing request to be conformed and responses. However, thelast block of the block chain changes, a hash value thereof changesaccordingly and a timestamp should be updated. Therefore, the blockgenerating unit 103 needs to recalculate a hash value of the new block.Since the updating of the block chain is based on a consensus of allnodes on the network, in this case, an initiating node may find that itsbroadcasted new block is rejected after updating the stored block chain.

Practically, the block generating unit 103 may determine whether toregenerate a new block further depending on an operation of theinitiating node and validity of the response information. For example,in the case that the initiating node already cancels the operation ofgenerating a new block, the block generating unit 103 does not need toregenerate a new block.

In addition, in some applications with high real-time requirements,information of the responses generally has time limitation. Therefore,it is equivalent to that a valid time window for generating a new blockis set. Once the valid time window is expired, no new block can begenerated using the information of the responses. In this case, it needsto retransmit a request to be confirmed and reacquire responses, so asto generate a new block. Therefore, the block generating unit 103 isfurther configured to regenerate a new block only when the response theinformation of the responses is still valid.

In addition, after the initiating node transmits the request to beconfirmed, a time window may be started, and responses from the othernodes are received within the time window. As shown in FIG. 7, a solidline with an arrow indicates the broadcasted request to be confirmed, adotted line with an arrow indicates a response, and a direction of thearrow indicates a direction of data transfer. In this example, thetransceiving circuit 201 is configured to receive the responses within apredetermine time period (i.e., the time window) since the request to beconfirmed is transmitted.

Respective units in the electronic apparatus 200 may be implemented byone or more processing circuits for example, and the one or moreprocessing circuits may be implemented as a chip for example. Inaddition, the transceiving unit 201 may also be implemented by atransceiving circuit, a communication interface, an antenna and so on.

Third Embodiment

FIG. 8 shows a block diagram of functional modules of an electronicapparatus 300 according to another embodiment of the present disclosure.As shown in FIG. 8, the electronic apparatus 300 includes: a responsegenerating unit 301, configured to generate a response to a request tobe confirmed from another node in a network, for use by the other nodeto generate a new block, where the request to he confirmed includes anelectronic signature of the other node and the response includes anelectronic signature of the present node.

It should be understood that, with the electronic apparatus 300, a nodecorresponding to the electronic apparatus 300 (referred to as thepresent node) can make a response to the request to be confirmed fromthe other node, the response is a reply to the request to be confirmedand indicates views of the present node or information which the presentnode can provide, such that the initiating node can generate a new blockat least based on the response. The request to be confirmed and theresponse each include an electronic signature of a respective node, theinformation may be considered to be credible, therefore the generatednew block can transfer trust between respective nodes.

In an example, the response generating unit 301 makes a responseaccording to priori knowledge of the present node or real-time contextdata. Specific operation ways of the response generating unit 301 dependon specific applications. In addition, the response may further includeinformation of time limitation for indicating a period of time duringwhich the response is valid. For example, in a scene with a strongreal-time requirement, the validity of the response may be ensured bythe information of time limitation.

As shown by a dotted line block in FIG. 8, the electronic apparatus 300may further include: a transceiving unit 302, configured to receive arequest to be confirmed and transmit the generated response to the othernode. The transceiving unit 302 may be implemented by a transceivingcircuit, a communication interface, an antenna and so on for example.

After the transceiving unit 302 receives the request to be confirmedfrom the initiating node, the response generating unit 301 may verifythe electronic signature in the request to be confirmed, to confirm anidentity of the transmitting node and the validity of the request to beconfirmed, and then generate a response using its electronic signature.The transceiving unit 302 transmits the response to the initiating node.As described above, the response would be used by the initiating node togenerate a new block.

In an example, the transceiving unit 302 may be further configured toreceive a new block broadcasted by another node. As shown by anotherdotted line block in FIG. 8, the electronic apparatus 300 may furtherinclude: a verifying unit 303, configured to verify the received newblock, and attach the new block to the end of a copy of the block chainstored by the present node after the verification passes. Accordingly,the electronic apparatus 300 may further include a memory 304 forstoring the copy of the block chain.

As described above, the verification performed by the verifying unit 303may include verifying at least one of the following items: a hash valueof the new block, a hash value of a previous block included in the newblock, a hash value of a data body in the new block, and legitimacy ofrespective electronic signatures in the data body and so on. If theverification fails, the verifying unit 303 would reject the new block,thereby not updating the copy of the block chain stored by the presentnode.

In addition, the verifying unit 303 is further configured to select theearliest generated new block according to information of timestamps inthe new blocks, when the transceiving unit 302 receives two or morebroadcasted new blocks at the same time. That is, there exists a casethat the transceiving unit 302 receives two or more new blocks fromdifferent initiating nodes at the same time instant, but the timestampsin these new blocks are not necessarily the same. In this case, theverifying unit 303 may select a new block in which the timestampindicates an earliest time instant to perform verification.Particularly, if the two or more new blocks received simultaneously havethe same timestamp, the verifying unit 303 may select one new blockrandomly. Actually, as for the new blocks with the same timestamp, dueto factors such as a link configuration of the network, different nodesmay receive these new blocks in different timings, and the node mayprocess the earliest received new block according to a principleof“first come first served”. In this case, the block chain system wouldautomatically reject the discarded blocks.

Respective units in the electronic apparatus 300 may be implemented byone or more processing circuits for example, and the processing circuitmay be implemented as a chip for example.

With the electronic apparatus 300 according to the embodiment, the blockchain can be updated with the calculation power saved.

In the above description, actually an information processing system isfurther provided, which includes multiple nodes communicating with eachother via a P2P network, where each of the multiple nodes is configuredto: generate a request to be confirmed which is to be sent to othernodes in a network, the request to be confirmed including an electronicsignature of the present node; acquire responses to the request to beconfirmed which are from the other nodes, the response including anelectronic signature of a corresponding node; and generate, based on therequest to be confirmed, the acquired response and an existing blockchain, a new block, and/or each of the multiple nodes is configured to:generate a response to a request to be confirmed from another node in anetwork, for use by the other node to generate a new block.

That is, a node in the information processing system may include theelectronic apparatus 300 and at least one of the electronic apparatus100 and 200, such that the node may function as not only the initiatingnode but also a response node providing a response. Alternatively, thenode may include only the electronic apparatus 100 or 200, or includeonly the electronic apparatus 300, such that the information processingsystem includes two types of nodes.

Fourth Embodiment

Operations and functions of the electronic apparatus 100 to theelectronic apparatus 300 are further described in combination withspecific application scenarios in the embodiment.

First Application Example

In this example, the network is Internet of Vehicle (IoV). IoV is anapplication of Internet of Things in a vehicle field, an only road forthe mobile internet and the Internet of Things to develop towardsservice essence and in depth, and is a fusion technology of informationcommunication, environment protection, energy saving, security and so onin the future. The IoV refers to interactions between a vehicle and avehicle, between a vehicle and a road, between a vehicle and a person,between a vehicle and a sensor, and so on, thereby achieving a dynamicmobile communication system in which the vehicle communicates with thepublic through the network. The IoV can share information throughinterconnection and inter-communication between a vehicle and a vehicle,between a vehicle and a person and between a vehicle and a road, guideand regulate vehicles effectively according to different functionrequirements, and provide a professional multi-media and mobile internetapplication service. With the IoV technology, the vehicle can achieveV2V (vehicle to vehicle) communication, share data between the going andcoming vehicles in a real-time manner, and achieve V2X (vehicle to roadinfrastructure) communication.

By applying the electronic apparatus of the present disclosure to avehicle (i.e., a node), trust can be transferred between uncorrelatedentities using the block chain technology, and real and valid real-timeroad conditions information is obtained in real-time according to theconsensus. In this way, decentralized real-time road conditionsobservation and further a navigation system may be realized.

It should be understood that, the road conditions information isspecific to a certain region and changes in a real-lime manner.Therefore, the block chain system in this application scenario is aregional and dynamic block chain system. A corresponding client devicemay be equipped on the vehicle to operate and maintain the block chain.Exemplarily, the client device may include the electronic apparatusdescribed above.

Specifically, when a vehicle serving as an initiator is to transmit arequest for road conditions information, the request generating unit 101of the electronic apparatus generates a request to be confirmedincluding an electronic signature of the vehicle and transmits therequest to be confirmed to other vehicles through V2V communication forexample.

In an example, the request to be confirmed includes geographicallocation information and traffic conditions information at acorresponding geographical location. For example, the initiating vehicleobserves road traffic conditions at a geographical location where theinitiating vehicle is located to obtain an observation result whetherthere is a traffic jam for example, and the observation result would beincluded in the request to be confirmed. The vehicle may observe theroad traffic conditions by means of at least one of the followings:analyzing a shooting result of a camera, a sensing result of an on-boardsensor such as a speed sensor, and a record of braking cases and so on.

Another vehicle which receives the request to be confirmed may obtain anobservation result of a current traffic conditions using similarobservation ways, and thus make a response to the request to beconfirmed based on the observation result. Subsequently, the electronicapparatus on the vehicle adds an electronic signature to the responseand replies to the initiator. It should be understood that, the roadtraffic conditions information is information with strong timelimitation, and thus the response may further include information oftime limitation.

When the initiator receives enough responses within a predetermined timewindow, the initiator may generate a new block. The operation ofgenerating the new block may be performed by the block generating unit103 of the electronic apparatus, and the new block may be constructed bythe ways in the first embodiment described above, which is not repeatedhere. In addition, in the case of using a block chain platform with atoken, the block generating unit 103 may also bind the road trafficconditions information on a virtual currency to share, using thetechnology similar to a colored coin.

Subsequently, the initiator broadcasts the generated new block to othervehicles, so as to wait confirmation from the other vehicles. If the newblock is accepted, the new block becomes the last block of the blockchain at a current time instant.

The vehicle drives in different regions, dynamically joins in and exitsfrom different dynamic block chain systems, and shares data of the blockchain with other going and coming vehicles during driving, i.e., sharescontent of the dynamic block chain for different regions where thevehicles pass, thereby sharing the complete traffic conditions of thearea via the IoV in the case that the IoV is non-central. Furthermore,the road traffic conditions data of each vehicle may be shared to aservice platform or block chain in an upper level using the V2Xtechnology, so as to achieve the observation of real-time road trafficconditions of the whole area.

On the other hand, the vehicle may achieve real-time road trafficconditions observation and navigation based on the shared data.

Second Application Example

In this example, the block chain may be applied in the field ofeducation. In this example, the block chain, which is a trust chain, maybe used to store information such as education experiences, certificatesand so on of a user. The information contains, for example, studyingwhich courses and possessing which certificates. In addition, based onconcepts of a smart contract and a smart property, knowledge may also beexchanged, transacted and transferred via the block chain as a property.

In the example, a node may be a student, a teacher or a certificateauthority having education qualification. For example, when the studentfinishes a course or obtain a certificate, he/she may function as aninitiating node to create a new block to store his/her educationexperiences. The initiating node may include the electronic apparatusdescribed above for example.

Specifically, the request generating unit 101 generates a request ofeducation experiences to be conformed, where the request includes anelectronic signature of the initiating node. The education experiencesto be confirmed may attach a certificate number which is to be confirmedby other nodes, or may be an electronic certificate with an electronicsignature of a license issuing authority, so that the other nodes canverify the electronic signature. The initiating node may also start atime window simultaneously when transmitting the request.

After receiving the above request, the other nodes verify validity ofthe education experiences to be confirmed. For example, the verificationmay be implemented by verifying the validity of the certificate attachedto the education experiences, or by verifying the digital signature ofthe license issuing authority. If the verification passes, recognizationinformation is returned and an electronic signature of a respective nodeis attached.

If the initiating node receives enough responses before the time windowis closed, for example ⅔ of all on-line nodes make responses that theverification passes, the initiating node may use the block generatingunit 103 to generate a new block. The new block may include the requestof education experiences to be confirmed and responses information ofother nodes. Composition of the new block is described in detailpreviously, and only the information of the data body to be included inthe new block is different here. Therefore the composition of the newblock is not repeated here.

Subsequently, the initiating node broadcasts the new block to update ablock chain. Specifically, another node receives the new block, andattaches the new block to the end of the stored copy of the block chainif the verification passes.

In this way, education experiences of each student can be found in theblock chain. When the student provides the education experienceinformation, the student may attach corresponding block chaininformation and block address information, so as to be verified by athird party.

In addition, besides the education experiences, knowledge obtained by anindividual may be transferred as a digital property, similar to thesmart property. For example, the consensus may be reached in the blockchain each for learning review, learning notes, a particular solution toa certain difficulty, a new created song, a new poem and so on. Itshould be understood that, in this application scenario, humanintervention may be required. For example, people determine whether toaccept the new song or the new poem as a new digital property by votingvia the block chain.

In this case, the request to be confirmed is knowledge information andis attached with an electronic signature of the initiating node. A timewindow is started simultaneously when the request to be conformed istransmitted, and the request is to be conformed by other nodes withinthe time window. In this case, human intervention may be involved, andtherefore the time window may be set to have an appropriate length.

After receiving the request, other nodes verify validity of theinformation to be confirmed. The verification may be by human judgmentor by intelligent identification via a computer. If the node recognizesthe request to be confirmed, recognization information is returned withan electronic signature of the node attached.

If the initiating node receives enough responses before the time windowis closed, the initiating node may create a new block, where the newblock includes the request to be confirmed and responses information ofother nodes. The initiating node broadcasts the new block to update theblock chain. Specifically, another node receives the new block, andattaches the new block to the end of the stored copy of the block chainif the verification passes.

Information of the knowledge in the request to be confirmed may includeall content, an abstract or a part of information of the knowledge, aslong as the other nodes can be made to believe that the possessedknowledge is valuable.

In this way, the possessor of each block may provide block addressinformation for retrieval. In addition, content of the block may betransferred, for example exchanging learning review or performingtransaction.

On the other hand, in the case of combining with the reward mechanismdescribed in the first embodiment, bonus points of each node may be usedto improve a priority level, exchange for learning notes and solutionsfor the problem, or the like. Education mechanism nodes on the blockchain need to participate during the exchange. Actually, the block maybe transacted by directly using the virtual currency, and money may beused to exchange for points and the points are used to purchase blockinformation.

Fifth Embodiment

In the process of describing the electronic apparatus in the embodimentsdescribed above, obviously, some processing or methods are disclosed.Hereinafter, an overview of the methods is given without repeating somedetails disclosed above. However, it should be noted that, although themethods are disclosed in a process of describing the electronicapparatus, the methods do not certainly employ or are not certainlyexecuted by the aforementioned components. For example, the embodimentsof the electronic apparatus may be partially or completely implementedwith hardware and/or firmware. The methods for the electronic apparatusdiscussed below may be executed by a computer-executable programcompletely, although the hardware and/or firmware of the electronicapparatus can also be used in the methods.

FIG. 9 shows a flowchart of a method for an electronic apparatusaccording to an embodiment of the present disclosure. The methodincludes: generating a request to be conformed which is to be sent toother nodes in a network (S11), where the request to be confirmedincludes an electronic signature of the present node; acquiringresponses to the request to be confirmed which are from the other nodes(S13), where the response includes an electronic signature of acorresponding node; and generating, based on the request to beconfirmed, the acquired responses and an existing block chain, a newblock (S15).

In addition, as shown by a dotted line block in FIG. 9, the method mayfurther include step S12: transmitting the request to be confirmed toother nodes in the network.

In an example, before step S15, the method may further include step S14:judging whether the acquired responses satisfy a predeterminedcondition. Step S15 of generating a new block is performed only in thecase that it is determined that the acquired responses satisfy thepredetermined condition. The predetermined condition is configuredaccording to an actual application scenario or requirements for example.The operation of acquiring responses in step S13 may be performed withina predetermined time window since the request to be confirmed istransmitted, for example.

Exemplarily, the responses may further include information of timelimitation for indicating a period of time during which the responsesare valid. The response is made by a corresponding node according topriori knowledge of the node or real-time context data.

The new block generated in step S15 may include a block header and adata body, and the block header includes a timestamp, a hash value of alast block in an existing block chain, a hash value of the new block anda hash value of the data body. The data body may include the request tobe confirmed and the responses.

In another example, the block header may further include the request tobe confirmed. Accordingly, the data body includes the responses. Theinformation of the data body may be stored in a tree hash structure.

In addition, as shown by another dotted line block in FIG. 9, the methodmay further include step S16: broadcasting the generated new block toeach of the other nodes in the network so as to update the block chain.In step S17, it is judged whether the new block broadcasted by thepresent node is accepted; and the method ends if it is determined thatthe new block is accepted. If it is determined that the new block is notaccepted, in step S15, it is judged whether the initiating node hascancelled the operation of generating a new block. The method ends if itis determined in step S18 that the initiating node cancels the operationof generating the new block. If it is determined in step S18 that theinitiating node has not cancelled the operation of generating the newblock, in step S19, it is judged whether the information of the responseis still valid. If it is determined in step S19 that the information ofthe response is still valid, the method returns to step S15 so as toregenerate a new block based on the request to be conformed, thereceived response and the already updated block chain. If it isdetermined in step S19 that the information of the response is notvalid, the processing ends. Alternatively, if it is determined in stepS19 that the information of the response is not valid, the methodreturns to step S11 to repeat all steps to generate a new block.

It should be understood that, the operations shown by the dotted lineblocks in FIG. 9 are optional, which do not limit the processing of themethod described above.

FIG. 10 shows a flowchart of a method for an electronic apparatusaccording to another embodiment of the present disclosure. The methodincludes: generating a response to a request to be confirmed fromanother node in a network (S22), for use by the other node to generate anew block, where the request to be confirmed includes an electronicsignature of the other node and the response includes an electronicsignature of the present node.

In addition, as shown by the dotted line blocks in FIG. 10, the methodmay further include: receiving the request to be confirmed (821); andtransmitting the generated response to the other node (S23).

In step S22, the response may be made according to priori knowledge ofthe present node or real-time context data. The response may includeinformation of time limitation for indicating a period of time duringwhich the response is valid.

The method may further include: receiving a new block broadcasted byanother node (S24); and verifying the received new block and attachingthe new block to the end of a copy of a block chain stored by thepresent node if the verification passes (S25).

In an example, in step S24, when two or more broadcasted new blocks arereceived simultaneously, the earliest generated new block is selectedaccording to information of timestamps in the new blocks.

It should be noted that, the methods described above may be used incombination or separately, and details thereof are described in detailin the first embodiment to the fourth embodiment, which are not repeatedhere.

The basic principle of the present invention has been described above inconjunction with particular embodiments. However, as can be appreciatedby those ordinarily skilled in the art, all or any of the steps orcomponents of the method and device according to the invention can beimplemented in hardware, firmware, software or a combination thereof inany computing device (including a processor, a storage medium, etc.) ora network of computing devices by those ordinarily skilled in the art inlight of the disclosure of the invention and making use of their generalcircuit designing knowledge or general programming skills.

Moreover, the present invention further discloses a program product inwhich machine-readable instruction codes are stored. The aforementionedmethods according to the embodiments can be implemented when theinstruction codes are read and executed by a machine.

Accordingly, a memory medium for carrying the program product in whichmachine-readable instruction codes are stored is also covered in thepresent invention. The memory medium includes but is not limited to softdisc, optical disc, magnetic optical disc, memory card, memory stick andthe like.

In the case where the present application is realized by software orfirmware, a program constituting the software is installed in a computerwith a dedicated hardware structure (e.g. the general computer 1100shown in FIG. 11) from a storage medium or network, wherein the computeris capable of implementing various functions when installed with variousprograms.

In FIG. 11, a central processing unit (CPU) 1101 executes variousprocessing according to a program stored in a read-only memory (ROM)1102 or a program loaded to a random access memory (RAM) 1103 from amemory section 1108. The data needed for the various processing of theCPU 1101 may be stored in the RAM 1103 as needed. The CPU 1101, the ROM1102 and the RAM 1103 are linked with each other via a bus 1104. Aninput/output interface 1105 is also linked to the bus 1104.

The following components are linked to the input/output interface 1105:an input section 1106 (including keyboard, mouse and the like), anoutput section 1107 (including displays such as a cathode ray tube(CRT), a liquid crystal display (LCD), a loudspeaker and the like), amemory section 1108 (including hard disc and the like), and acommunication section 1109 (including a network interface card such as aLAN card, modem and the like). The communication section 1109 performscommunication processing via a network such as the Internet. A driver1110 may also be linked to the input/output interface 1105. If needed, aremovable medium 1111, for example, a magnetic disc, an optical disc, amagnetic optical disc, a semiconductor memory and the like, may beinstalled in the driver 1110, so that the computer program readtherefrom is installed in the memory section 1108 as appropriate.

In the case where the foregoing series of processing is achieved bysoftware, programs forming the software are installed from a networksuch as the Internet or a memory medium such as the removable medium1111.

It should be appreciated by those skilled in the art that the memorymedium is not limited to the removable medium 1111 shown in Figure,which has program stored therein and is distributed separately from theapparatus so as to provide the programs to users. The removable medium1111 may be, for example, a magnetic disc (including floppy disc(registered trademark)), a compact disc (including compact discread-only memory (CD-ROM) and digital versatile disc (DVD), a magnetooptical disc (including mini disc (MD)(registered trademark)), and asemiconductor memory. Alternatively, the memory medium may be the harddiscs included in ROM 1102 and the memory section 1108 in which programsare stored, and can be distributed to users along with the device inwhich they are incorporated.

To be further noted, in the apparatus, method and system according tothe invention, the respective components or steps can be decomposedand/or recombined. These decompositions and/or recombinations shall beregarded as equivalent schemes of the invention. Moreover, the aboveseries of processing steps can naturally be performed temporally in thesequence as described above but will not be limited thereto, and some ofthe steps can be performed in parallel or independently from each other.

Finally, to be further noted, the term “include”, “comprise” or anyvariant thereof is intended to encompass nonexclusive inclusion so thata process, method, article or device including a series of elementsincludes not only those elements but also other elements which have beennot listed definitely or an element(s) inherent to the process, method,article or device. Moreover, the expression “comprising a(n) . . . ” inwhich an element is defined will not preclude presence of an additionalidentical element(s) in a process, method, article or device comprisingthe defined element(s)” unless further defined.

Although the embodiments of the invention have been described above indetail in connection with the drawings, it shall be appreciated that theembodiments as described above are merely illustrative but notlimitative of the invention. Those skilled in the art can make variousmodifications and variations to the above embodiments without departingfrom the spirit and scope of the invention. Therefore, the scope of theinvention is defined merely by the appended claims and theirequivalents.

1. An electronic apparatus, comprising: a processing circuit configuredto: generate a request to be confirmed which is to be sent to othernodes in a network, the request to be confirmed comprising an electronicsignature of the present node; acquire responses to the request to beconfirmed from the other nodes, the response comprising an electronicsignature of a corresponding node; and generate, based on the request tobe confirmed, the acquired responses and an existing block chain, a newblock.
 2. The electronic apparatus according to claim 1, wherein theprocessing circuit is further configured to generate the new block onlywhen the acquired responses satisfy a predetermined condition.
 3. Theelectronic apparatus according to claim 1, wherein the new blockcomprises a block header and a data body, and the block header comprisesa timestamp, a hash value of a last block in the existing block chain, ahash value of the new block and a hash value of the data body.
 4. Theelectronic apparatus according to claim 3, wherein the block headerfurther comprises the request to be confirmed.
 5. The electronicapparatus according to claim 3, wherein the data body comprises therequest to be confirmed and the responses.
 6. The electronic apparatusaccording to claim 4, wherein the data body comprises the responses. 7.The electronic apparatus according to claim 3, wherein information ofthe data body is stored in a tree hash structure.
 8. The electronicapparatus according to claim 1, wherein the responses further compriseinformation of time limitation, for indicating a period of time duringwhich the responses are valid.
 9. The electronic apparatus according toclaim 1, wherein the response is made by the corresponding nodeaccording to priori knowledge of the node or real-time context data. 10.The electronic apparatus according to claim 1, further comprising: atransceiving circuit, configured to broadcast the generated new block toeach of the other nodes in the network to update the block chain. 11.The electronic apparatus according to claim 10, wherein the processingcircuit is further configured to, when the generated new block isrejected by the other nodes, regenerate a new block based on the requestto be confirmed, the received responses and an updated block chain. 12.The electronic apparatus according to claim 11, wherein the processingcircuit is further configured to regenerate the new block only when theinformation of the responses is still valid.
 13. The electronicapparatus according to claim 10, wherein the transceiving circuit isfurther configured to receive the responses within a predetermined timeperiod since the request to be confirmed is transmitted.
 14. Anelectronic apparatus, comprising: a processing circuit configured to:generate a response to a request to be confirmed from an other node in anetwork, for use by the other node to generate a new block, wherein therequest to be confirmed comprises an electronic signature of the othernode, and the response comprises an electronic signature of the presentnode.
 15. The electronic apparatus according to claim 14, furthercomprising: a transceiving circuit, configured to receive the request tobe confirmed and transmit the generated response to the other node. 16.The electronic apparatus according to claim 14, wherein the processingcircuit is configured to make the response according to priori knowledgeof the present node or real-time context data.
 17. The electronicapparatus according to claim 14, wherein the response further comprisesinformation of time limitation, for indicating a period of time duringwhich the response is valid.
 18. The electronic apparatus according toclaim 15, wherein the transceiving circuit is further configured toreceive a new block broadcasted by another node, and the processingcircuit is further configured to verify the received new block andattach the new block to the end of a copy of a block chain stored by thepresent node after the verification passes.
 19. The electronic apparatusaccording to claim 18, wherein the processing circuit is configured to,in the case that the transceiving circuit receives two or morebroadcasted new blocks at the same time, select the earliest generatednew block according to information of timestamps in the new blocks. 20.The electronic apparatus according to claim 1, wherein the network isInternet of Vehicle.
 21. The electronic apparatus according to claim 20,wherein the request to be confirmed comprises geographical locationinformation and traffic conditions information at a correspondinggeographical location.
 22. The electronic apparatus according to claim1, further comprising a memory configured to store a copy of a blockchain.
 23. A method for an electronic apparatus, comprising: generatinga request to be confirmed which is to be sent to other nodes in anetwork, the request to be confirmed comprising an electronic signatureof the present node; acquiring responses to the request to be confirmedwhich are from the other nodes, the response comprising an electronicsignature of a corresponding node; and generating, based on the requestto be confirmed, the acquired responses and an existing block chain, anew block.
 24. A method for an electronic apparatus, comprising:generating a response to a request to be confirmed from an other node ina network, for use by the other node to generate a new block, wherein,the request to be confirmed comprises an electronic signature of theother node, and the response comprises an electronic signature of thepresent node.
 25. An information processing system, comprising aplurality of nodes communicating with each other via a P2P network,wherein each of the plurality of nodes is configured to: generate arequest to be confirmed which is to be sent to other nodes in a network,the request to be confirmed comprising an electronic signature of thepresent node; acquire responses to the request to be confirmed from theother nodes, the response comprising an electronic signature of acorresponding node; and generate, based on the request to be confirmed,the acquired responses and an existing block chain, a new block, and/oreach of the plurality of nodes is configured to: generate a response toa request to be confirmed from another node in the network, for use bythe other node to generate a new block.